---
Order: 3000
Description: Details on GitVersion's Build Server support
RedirectFrom:
- docs/build-server-support
- docs/build-server-support/build-server
- docs/build-server-support/build-server/index.html
- docs/build-server-support/build-server-support
- docs/build-server-support/index.html
---

<p>
    Depending on the Build Server being used, i.e. TeamCity, Jenkins, etc,
    GitVersion might need to extra repository information in order to work
    correctly. GitVersion has knowledge of most of the main CI Providers, and when
    instructed to do so, will fetch the necessary information in order to
    correctly assert the semantic version number.
</p>

<p>
    In addition, most build servers allow the setting of the build number within
    the system, GitVersion knows how to do this automatically. GitVersion has
    support for quite a few build servers out of the box. Currently we support:
</p>

@Html.Partial("_ChildPages")

<h2>Build Server Variables</h2>

<p>
    When the <code>gitVersion</code> executable is run with the
    <code>/output buildserver</code> flag instead of outputting JSON, it will
    export its <a href="/docs/reference/variables">version variables</a> to the
    current build server as build-server native variables. For instance if you
    are running in TeamCity after you run
    <code>gitversion /output buildserver</code> you will have the
    <code>%system.GitVersion.SemVer%</code> variable available for you to use
    in the rest of the build configuration.
</p>

<h2>MSBuild Properties</h2>

<p>
    When running in MSBuild either from the
    <a href="/docs/usage/msbuild">MSBuild Task</a> or by using
    <code>/proj myproject.sln</code> parameter, GitVersion will make its
    <a href="/docs/reference/variables">version variables</a> available as
    MSBuild properties in the format <code>$(GitVersion_SemVer)</code>.
</p>

<h2>Environment Variables</h2>

<p>
    When executed within one of the supported build servers mentioned above,
    GitVersion will also expose the <a href="/docs/reference/variables">version
    variables</a> as <strong>environment variables</strong>, in the format
    <code>GitVersion_SemVer</code> (and in some circumstances, as
    <code>GitVersion.SemVer</code>).
</p>

<h2>Normalization</h2>

<p>
    The standard <code>gitversion</code> executable normalize the branches if
    there is a build server detected. This behavior can be disabled with the
    <code>/nonormalize</code> option.
</p>
